Data traffic is composed of data packets. Data packets can be organized according to various standard data protocols such as Transmission Control Protocol (TCP) or File Transfer Protocol (FTP), for example. A data packet is typically organized into a header and a payload. The header contains information about the packet, for example: source and destination addresses, protocol type or packet length. The payload is the actual data to be transferred. As a data packet is passed through a communication network from source to destination it is typically forwarded multiple times by intermediate nodes in the communication network until it reaches its final destination. Intermediate nodes could include, for example, routers, switches or firewalls. Packet handling can involve processing of the header information or the payload itself.
Packets can be handled using general purpose processors or specialized network processors with internal architectures optimized for network centric operation.